Expand description
Color conversions and types.
If you want a compact color representation, use Color32
.
If you want to manipulate RGBA colors use Rgba
.
If you want to manipulate colors in a way closer to how humans think about colors, use HsvaGamma
.
Feature flags
-
extra_debug_asserts
— Enable additional checks if debug assertions are enabled (debug builds). -
extra_asserts
— Always enable additional checks.
Optional dependencies
Macros
- An assert that is only active when
epaint
is compiled with theextra_asserts
feature or with theextra_debug_asserts
feature in debug builds. - Construct a
crate::Color32
from a hex RGB or RGBA string.
Structs
- This format is used for space-efficient color representation (32 bits).
- Hue, saturation, value, alpha. All in the range [0, 1]. No premultiplied alpha.
- Like Hsva but with the
v
value (brightness) being gamma corrected so that it is somewhat perceptually even. - 0-1 linear space
RGBA
color with premultiplied alpha.
Functions
- linear [0, 1] -> gamma [0, 1] (not clamped). Works for numbers outside this range (e.g. negative numbers).
- linear [0, 1] -> gamma [0, 255] (clamped). Values outside this range will be clamped to the range.
- All ranges in 0-1, rgb is linear.
- gamma [0, 255] -> linear [0, 1].
- linear [0, 255] -> linear [0, 1]. Useful for alpha-channel.
- gamma [0, 1] -> linear [0, 1] (not clamped). Works for numbers outside this range (e.g. negative numbers).
- linear [0, 1] -> linear [0, 255] (clamped). Useful for alpha-channel.
- All ranges in 0-1, rgb is linear.
- Cheap and ugly. Made for graying out disabled
Ui
s.